package com.foftact.etf.mapper;

import com.foftact.etf.ETFList;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * ETF基金行情Mapper接口
 * 用于操作etf_list表
 */
@Mapper
public interface ETFListMapper {
    /**
     * 插入单条ETF数据
     * @param etfList ETF数据对象
     * @return 插入的行数
     */
    int insert(ETFList etfList);

    /**
     * 批量插入ETF数据
     * @param etfListList ETF数据列表
     * @return 插入的行数
     */
    int batchInsert(@Param("list") List<ETFList> etfListList);

    /**
     * 根据基金代码查询ETF数据
     * @param code 基金代码
     * @return ETF数据对象
     */
    ETFList selectByCode(String code);

    /**
     * 查询所有ETF数据
     * @return ETF数据列表
     */
    List<ETFList> selectAll();

    /**
     * 根据基金代码更新ETF数据
     * @param etfList ETF数据对象
     * @return 更新的行数
     */
    int updateByCode(ETFList etfList);

    /**
     * 根据基金代码删除ETF数据
     * @param code 基金代码
     * @return 删除的行数
     */
    int deleteByCode(String code);

    /**
     * 清空ETF表
     * @return 删除的行数
     */
    int truncateTable();
}